package net.dirox.confluence.plugin.dao.service;

import java.util.List;

import net.dirox.confluence.plugin.ao.entities.Note;
import net.dirox.confluence.plugin.ao.entities.User;

import com.atlassian.activeobjects.tx.Transactional;

@Transactional
public interface NoteService {
	Note add(String content, int priority);

	Note update(int id, String content, int priority);

	void delete(int id);
	
	Note getNote(int id);

	List<Note> getAll();

	List<Note> getNotes(int priority);

	List<Note> getMemos();

	void tagNoteToUser(Note note, com.atlassian.crowd.embedded.api.User user);

	void untagNoteToUser(Note note, User user);

	void associateUsers(Note note,
			com.atlassian.crowd.embedded.api.User[] arrUsers);
	
	User currentUser();
}
